Coregistering images of needle biopsies using multiple weighted landmarks

ABSTRACT

A method for coregistering images involves defining middle paths through image objects depicting tissue slices of needle biopsies. First landmarks are defined on a first middle path through a first image object in a first digital image of a first tissue slice, and second landmarks are defined on a second middle path through a second image object of a second digital image of a second tissue slice. Individual first landmarks are associated with individual second landmarks. A first pixel in the first object is coregistered with a second pixel in the second object using multiple first and second landmarks. The first image is displayed in a first frame on a graphical user interface, and the second image is displayed in a second frame such that the first pixel is centered in the first frame, the second pixel is centered in the second frame, and the images have the same orientations.

TECHNICAL FIELD

The present invention relates to coregistering digital images of tissue slices obtained from needle biopsies.

BACKGROUND

There are many applications for analyzing tissue samples that are stained with multiple biomarkers. How the same tissue reacts to staining by different biomarkers is determined by slicing the tissue into multiple very thin slices and then separately staining the slices. In order to determine how different biomarkers stain the same tissue structures, however, digital images of the slices must be coregistered to indicate which tissue structures in one slice correspond to similar tissue structures in the other slices. Coregistration of the digital images is possible only if the thickness of the slices is thin enough so that cross sections of the same tissue structures appear in the digital images of multiple slices. For example, multiple slices may pass through a single cancerous region of tissue, and it may be possible to determine that the various outlines of the cancerous region correspond to the same cancerous region in another image even though the outlines are not identical. Coregistration of the digital images involves mapping of pixels from the digital image of one slice to the related pixels of the digital image of an adjacent slice or nearby slice.

A particular complication arises when the digital images to be coregistered include cross sections of multiple needle core biopsy samples as opposed to a continuous slice of tissue. As the slices of the multiple paraffin-embedded needle biopsy samples are cut, the elongated needle tissue samples bend, shift, stretch and become generally distorted. Most importantly, different slices of the same needle tissue sample are distorted differently. So the task of coregistering the digital images of adjacent or nearby needle tissue samples requires much more than merely determining the x-y translation and rotation of one image with respect to the other image. Because the tissue slices are distorted, each pixel of one image must be separately coregistered to the appropriate pixel in the other image.

One method of separately coregistering each pixel of one image with the associated pixel of the other image is to segment, classify and identify sufficiently small corresponding tissue structures throughout each of the digital images. The pixels are coregistered by determining the correspondence between tissue structures in the images. However, determining corresponding low-order tissue structures, such as cells, is computationally intensive at full resolution because digital images of tissue slices typically have a very high spectral resolution, which can be on the order of several Giga-pixels. In addition, these low-order tissue structures are not consistent from slice to slice; a cell in one slice does not necessarily appear in another slice. Performing segmentation on all of the structures in the images of multiple slices and then comparing each low-order structure in each image to all of the low-order structures in the other images to find corresponding low-order structures is typically not computationally feasible.

One solution for reducing computation time and improving consistency of the structures that are used for coregistration is to perform segmentation on low-resolution superimages of the tissue slices. Higher-order structures are then used for the coregistration, such as stromal-tissue regions, fatty-tissue regions, cancerous regions or connective-tissue regions. The structures of highest order in the digital images are the tissue samples themselves, whose outlines can be used for coregistration. But coregistration performed using higher-order structures is consequently imprecise because of their possible distortion from slice to slice.

A more precise method of coregistering images of needle biopsy tissue samples is sought that does not require the segmentation of all of the tissue structures in the various tissue slices. Moreover, a method is sought for displaying the various different staining results that simultaneously depicts corresponding structures in the various digital images of differently stained tissue.

SUMMARY

A method for coregistering digital images involves defining a first path in a first image object of a first digital image of a first tissue slice. And a second path is defined in a second image object of a second digital image of a second tissue slice. First landmarks are defined on the first path, and second landmarks are defined on the second path. An additional first landmark that is not on the first path but is within the first image object is defined at a location determined based on a local direction of the first path. Individual first landmarks are associated with individual second landmarks. A first pixel in the first image object is coregistered with a second pixel in the second object using multiple first landmarks and multiple second landmarks. The first digital image is displayed in a first frame and the second digital image is displayed in a second frame on a graphical user interface. The first pixel is positioned at a first reference location inside the first frame, and the second pixel is positioned at a second reference location inside the second frame such that the first reference location relative to the first frame corresponds to the second reference location relative to the second frame. In one aspect, the first path passes through the first image object halfway between opposite boundaries of the first image object. In another aspect, the first path resembles an outer contour of the first image object.

The coregistration of the digital images is manually adjusted after the images are displayed on the graphical user interface. The user first selects one of the second digital images displayed in a row of frames. The selected second digital image is then shifted based on user input while the first digital image does not move relative to the first frame. The first pixel at the first reference location is then coregistered with a third pixel that is positioned at the second reference location inside the second frame as a result of the shifting.

In addition to manually adjusting the coregistration by shifting the second digital image so as to coregister the third pixel with the first pixel, the second digital image is also rotated about the third pixel such that the second digital image is coregistered with the first digital image. The image objects in the second digital image that are visible in the second frame become aligned with the corresponding image objects in the first digital image. Thus, the user of the coregistration system manually shifts and rotates individual second images so as to improve the coregistration of the displayed portions of the images.

In another embodiment, a method for coregistering images defines middle paths through image objects that depict tissue slices of needle biopsies. First landmarks are defined on a first middle path through a first image object of a first digital image of a first tissue slice, and second landmarks are defined on a second middle path through a second image object of a second digital image of a second tissue slice. Individual first landmarks are associated with individual second landmarks. A first pixel in the first image object is coregistered with a second pixel in the second object using multiple first landmarks and multiple second landmarks. The first digital image is displayed in a first frame on a graphical user interface, and the second digital image is displayed in a second frame on the graphical user interface such that the first pixel is centered in the first frame and the second pixel is centered in the second frame.

The second digital image is shifted within the second frame in response to a user shifting the first digital image relative to the first frame such that each pixel of the second digital image that is centered in the second frame corresponds to a coregistered pixel of the first digital image that is centered in the first frame. The second digital image is shifted within the second frame in response to either the user shifting the first digital image under the first frame or the user shifting the first frame over the first digital image.

The coregistering of the first and second pixels is performed such that a spatial relationship between the second pixel and multiple second landmarks corresponds to the spatial relationship between the first pixel and multiple first landmarks. The spatial relationship between the first pixel and the multiple first landmarks is defined by assigning a larger weighting to those first landmarks that are closer to the first pixel. Not only is the first pixel that is centered in the first frame coregistered with the second pixel that is centered in the second frame, but the second digital image is also displayed in the second frame in a coregistered orientation to how the first digital image is displayed in the first frame. The image object that is centered in the second frame is aligned with the image object that is centered in the first frame.

In one implementation, each coregistered pixel of the second digital image is determined using landmarks that are weighted based on their distance from the each of the coregistered pixels. In another implementation, each coregistered pixel of the second digital image is determined based only on those second landmarks that are associated with first landmarks located on a particular image object.

In another embodiment, pixels in different digital images of tissue slices are coregistered using multiple landmarks that are located along middle paths of image objects. A first tissue slice and a second tissue slice are taken from a needle biopsy. A first digital image of the first tissue slice is displayed on a graphical user interface such that an area of the first digital image is enclosed by a frame. A portion of a second digital image of the second tissue slice is also displayed on the graphical user interface. The displayed portion of the second digital image has the shape of the frame and corresponds to the area of the first digital image that is enclosed by the frame. A pixel that is centered in the displayed portion of the second digital image is initially coregistered with an associated pixel of the first digital image that is centered in the frame by using multiple second landmarks in the second digital image and multiple associated first landmarks in the first digital image. The displayed portion of the second digital image is shifted in response to a user shifting the first digital image relative to the frame such that each coregistered pixel of the displayed portion of the second digital image is determined using first landmarks that are weighted based on their distances to the associated pixel of the first digital image that is centered in the frame.

As the user shifts the first digital image under the frame or the frame over the first digital image, each pixel that is centered in the displayed portion of the second digital image corresponds to a coregistered pixel of the first digital image that is centered in the frame. The pixels of the displayed portion of the second digital image are dynamically coregistered as the user shifts the first digital image such that the pixel that is centered in the displayed portion is coregistered with the pixel that is centered in the frame using only on those second landmarks that are associated with first landmarks located on an image object.

In another embodiment, the pixels of the displayed portion of the second digital image are dynamically coregistered with pixels of the first digital image as the user zooms in the first digital image within the frame such that the pixel that is centered in the displayed portion is coregistered with the pixel that is centered in the frame by using only those second landmarks that are associated with first landmarks located inside the frame. When coregistration is performed using only those second landmarks associated with first landmarks located inside the frame, the displayed portion of the second digital image is displayed in a coregistered orientation to how the first digital image is oriented in the frame.

Other embodiments and advantages are described in the detailed description below. This summary does not purport to define the invention. The invention is defined by the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, where like numerals indicate like components, illustrate embodiments of the invention.

FIG. 1 is a diagram of a novel system for coregistering digital images of tissue slices obtained from needle biopsies.

FIG. 2 illustrates the process for acquiring the digital images that are then coregistered and displayed by the system of FIG. 1.

FIG. 3 shows a slide containing a tissue slice of five needle biopsies.

FIG. 4 is a flowchart of steps for coregistering digital images of tissue slices obtained from needle biopsies.

FIG. 5 illustrates a data network generated by the system of FIG. 1 in which image objects of the data network are linked to selected pixels of an image of a tissue slice.

FIGS. 6A-F illustrate ways of separating image objects of tissue samples that are in contact with or overlap each other.

FIGS. 7A-D illustrate a process by which the system of FIG. 1 defines a middle path through an image object.

FIG. 8 shows a loop path in an image object on which landmarks are placed.

FIG. 9 illustrates a process by which a pixel in a first image object is coregistered with a pixel in a second image object using multiple landmarks on both objects.

FIG. 10 is a more detailed view of eight of the landmarks used in FIG. 9 to coregister the pair of pixels.

FIG. 11 is a screenshot of a graphical user interface of the system of FIG. 1 in which the center pixels in various frames are coregistered.

FIG. 12 is a screenshot of the graphical user interface of FIG. 11 in which a second digital image is shifted compared to its position in FIG. 11 as a user shifts a first digital image relative to a frame.

FIG. 13 is a screenshot of the graphical user interface of FIG. 11 in which the second digital image is shifted compared to its position in FIG. 12 as the user further shifts the first digital image relative to the frame.

FIG. 14 is a screenshot of a graphical user interface showing that as a user shifts a first digital image relative to a frame, the pixels of a displayed portion of a second digital image are dynamically coregistered using only those landmarks in the second digital image that are associated with those landmarks in the first digital image that are located inside the frame.

FIG. 15 is a screenshot of the graphical user interface of FIG. 14 in which the orientation of the displayed portion of the second digital image is changed as the user shifts the first digital image under the frame.

FIG. 16 is a flowchart of the steps of another method of coregistering digital images of tissue slices obtained from needle biopsies.

FIGS. 17A-F illustrate another way of separating image objects of tissue samples that are in contact with or overlap each other.

FIGS. 18A-D illustrate a way to separate a combined image object that is curved as opposed to branched.

FIGS. 19A-B illustrate how landmarks are placed along corrected middle paths of image objects.

FIG. 20 illustrates a procedure for coregistering a second pixel with a first pixel using virtual landmarks generated by weighting a plurality of first and second landmarks.

FIGS. 21-22 are screenshots of the graphical user interface of the system of FIG. 1 illustrating how the coregistration of two images is manually adjusted by shifting the displayed portion of a second image.

FIGS. 23-24 are screenshots of the graphical user interface of the system of FIG. 1 illustrating how the coregistration of two images is manually adjusted by shifting and rotating a second image.

DETAILED DESCRIPTION

Reference will now be made in detail to some embodiments of the invention, examples of which are illustrated in the accompanying drawings.

FIG. 1 shows a system 10 for coregistering digital images of tissue slices obtained from needle biopsies. Tissue slices of needle biopsies are obtained as described below. Then digital images 11 of the tissue slices are acquired at high magnification. The acquired digital images 11 are stored in a database 12 of images. Image analysis software executing on a data analysis server 13 then performs intelligent image processing and automated classification and quantification. The image analysis software is a computer program product tangibly embodied on a computer-readable storage medium in server 13 and comprises computer readable and executable program instructions that when executed by a processor on server 13 provide a visual display on a graphical user interface 14 of an interconnected display device 15, such as a personal computer. The image analysis software transforms unlinked input data in the form of pixels into a hierarchical network of objects.

System 10 analyzes, coregisters and displays the digital images 11 of tissue slices in a coregistered orientation such that centered, coregistered image objects in multiple images are aligned. The image analysis program prepares links between some objects and thereby generates higher hierarchically ranked objects. The image analysis program provides the higher hierarchically ranked objects with properties, classifies them, and then links those objects again at a still higher level to other objects. The higher hierarchically ranked objects are used to find target objects in the images more rapidly. More easily detected starting objects are found first and then used to identify hard-to-find objects in the hierarchical data structure.

Both general and subject-specific knowledge is used to classify and segment objects in the images. The knowledge and the program flow of the image analysis program are separated in the software structure. The parameters by which the image analysis is performed, for example thresholds of brightness or size, can be changed without having to revise the process hierarchy of software steps. The image analysis software displays both the original digital images 11 as well as the corresponding processed segmented images on the graphical user interface 14. Classified and segmented objects in the digital images are marked or highlighted to correspond to their classification. For example, objects that have a membership in the same class are depicted in the same color. Besides performing object-oriented processing, the image analysis software also performs pixel-oriented processing. The results of the pixel-oriented processing are visualized by differently colored pixels representing values from local statistical results, such as heat maps.

FIG. 2 illustrates the process for acquiring the digital images 11 that are then segmented, classified, coregistered and displayed by system 10. Tissue samples 16 are typically taken from a live patient 17 in the form of a biopsy. Biopsies are taken either as resection biopsies during surgery on the patient or as needle biopsies in an outpatient procedure. System 10 is specially adapted to coregister digital images of tissue samples obtained from needle biopsies. For example, needle biopsies are typically used to obtain samples of prostate and breast tissue that is to be tested for cancer. For diagnosing prostate cancer, most doctors agree that an initial prostate biopsy should include at least ten to twelve needle core samples. The needle core tissue samples 16 are embedded in paraffin wax 18, and then the entire block of paraffin-embedded samples is sliced into many adjacent thin planar slices.

FIG. 2 shows a single cylindrical tissue sample 19 that is sliced into N adjacent planar tissue slices. Needle core tissue sample 19 is roughly two millimeters in diameter, and each of the tissue slices has a thickness of about two microns. Thus, it is possible to obtain about a thousand tissue slices from each tissue sample 19. Because the slices are very thin, adjacent slices contain parts of the same tissue structures. The slices include tissue structures at different z altitudes at the same position in the x and y dimensions of the tissue sample. But the entire block of paraffin-embedded samples, as opposed to each individual cylindrical sample, is sliced into many tissue slices. Thus, each tissue slice includes a cross section of several needle core tissue samples 16.

FIG. 2 shows a first tissue slice 20 placed on a first slide 21 as well as a second tissue slice 22 placed on a second slide 23. Second tissue slice 22 originated from the block of paraffin-embedded samples adjacent to first tissue slice 20. Before being put on a slide, each of the tissue slices can be stained with one or more different biomarkers. The same tissue reacts uniquely to each different biomarker. For example, various slices can be stained with hematoxylin and eosin (H&E), cytokeratin 18 (CK18), transcription factor p63, Human Epidermal growth factor Receptor 2 (Her2), Her2/neu cytoplasmic stain, estrogen receptor (ER) stain, progesterone receptor (PR) stain, tumor marker Ki67, Mib, SishChr17, SishHer2, cluster of differentiation 44 (CD44) antibody stain and CD23 antibody stain. A high resolution digital image 11 is then taken of each stained slice.

FIG. 3 shows first tissue slice 20 on first slide 21 in more detail. Although the several needle core tissue samples 16 are aligned nearly in parallel in the wax block, the tissue samples are shifted, stretched and distorted as each slice is cut because the wax 18 is softer than the tissue. For example, the slice section 24 of one of the needle core tissue samples 16 appears banana-shaped on slide 21. Moreover, not all of the needle core tissue samples 16 are suspended at the exact same elevation in the block of wax 18 as shown in FIG. 2, so the area of the cross section of a sample will be smaller if the slice section passes through the needle core tissue sample 16 nearer to the top or nearer the bottom. In FIG. 3, a slice section 25 has a smaller area than that of slice section 24 because the tissue sample from which slice section 25 was taken was suspended higher or lower in the wax. The distortion in the slice sections 24-25 caused when a blade cuts through first tissue slice 20 makes it more difficult to coregister the slice sections 24-25 with the corresponding sections in other slices above and below first tissue slice 20. System 10 is specially adapted to coregister digital images containing these distorted tissue slices from needle biopsies.

FIG. 4 is a flowchart of steps 26-37 of a method 38 for coregistering digital images of tissue slices obtained from needle biopsies. The digital images are acquired by using a digital camera, a high-resolution light microscope or a slide scanner. A typical digital image of a tissue slice has a resolution of many billions of pixels.

In a first step 26, first image objects are generated from a first digital image 39 taken of first tissue slice 20. The image objects are not merely objects apparent in an image. Rather, the image objects are objects in a data network comprising linked pixels.

FIG. 5 illustrates exemplary data network 40 that is generated by system 10. In step 26, system 10 generates first image objects 41 from first digital image 39 based on the slices of the needle biopsies. The image analysis program of system 10 uses object-oriented image analysis to generate objects of data network 40 by linking selected pixels 42 to objects according to a process hierarchy of steps and algorithms and according to a classification network. For a more detailed description of generating a data network using a process hierarchy and a class network, see U.S. Pat. No. 8,319,793, the contents of which are incorporated herein by reference. Each digital image comprises pixel values associated with the locations of each of the pixels 42. Thus, a pixel represents a position or spatial location on a digital image. The image analysis program operates on the digital pixel values and links the pixels to form objects. Each object is linked to a set of pixel locations based on the associated pixel values. For example, an object is generated by linking to the object those pixels having similar characteristics, such as hue, saturation and brightness as defined by the pixel value. Thresholds of brightness at pixel locations that are grouped together can be obtained from a histogram of the pixel values in the digital image. The pixels form the lowest hierarchical level of data network 40. In FIG. 5, an image object 43 corresponds to slice section 24, and an image object 44 corresponds to slice section 25. Objects 43-44 are in turn linked to object 45 in a higher hierarchical level of data network 40.

FIG. 5 also illustrates another difficulty in coregistering images of needle biopsies in addition to the distortion caused by slicing paraffin-embedded tissue samples. Some slices of tissue samples may be shifted in the x and y dimensions during the slicing such that the tissue slices are contacting each other in the digital images. In addition, multiple tissue samples may overlap each other because on tissue sample crossed over another tissue sample in the block of wax. Image object 43 is in contact with an image object 46. Before individual portions of needle core tissue samples can be coregistered, the boundary of each tissue sample must be determined by separating multiple tissue samples that are in contact. Image object 43 must be separated from image object 46 before each of these image objects can be coregistered with corresponding image objects in other slices of the paraffin-embedded tissue samples.

FIGS. 6A-F illustrate two possible ways of separating image objects of tissue samples that are in contact with or overlap each other. Additional ways of separating image objects are described below with regard to FIGS. 17-18. FIGS. 6A-C show how a combined image object 47 is separated into its constituent tissue samples using concave points in the combined object. First, objects with a low linearity are identified. An object has a low linearity when it has a large ratio of its narrowest total width to its longest dimension. Combined image object 47 is identified as an object with a low linearity. The length and width of combined image object 47 are indicated in FIG. 6A. Next, points are identified at the center of concave curves along the boundary. Some of the concave points, such as concave points 48-50, are indicated in FIG. 6A as dots on the boundary of combined image object 47. Then, the combined image object is split into smaller objects along splitting lines that connect the concave points along the boundary. For example, splitting line 51 connects concave points 49 and 50. Finally, only those split portions of a combined object are retained that have the greatest combined linearity. For example, splitting line 51 does not result in two split portions having the greatest combined linearity.

FIG. 6B shows combined image object 47 that has been split into the two split portions 52-53 that have the greatest combined linearity. Split portions 52-53 are formed by separating object 47 along a splitting line 54 that connects concave points 48 and 49. FIG. 6C shows split portion 52 and split portion 53 after they have been separated using concave points 48-49. Split portions 52-53 are logically split in data network 40 and treated as separate image objects for purposes of coregistration, but first image 39 is not altered by separating split portions 52-53 in the image. In addition to splitting combined objects that exhibit low linearity, small objects are added to larger objects if doing so increases the linearity of the resulting combined object. FIG. 6C also shows a small object 55 that is logically added to image object 52 in data network 40.

FIGS. 6D-F show how a combined image object 56 is separated into its constituent tissue samples using one strong concave points and a weak concave point. Whereas combined image object 47 was identified as requiring splitting because of its large width compared to its length, combined image object 56 is identified as requiring splitting because of its high angle of curvature. Because system 10 performs object-oriented image analysis, as opposed to pixel-oriented image analysis, the image objects can be classified according to features not evident from the pixels alone. For example, the curvature of an image object can be determined by first generating a middle path through the object and then analyzing the curvature of the middle path.

In FIG. 6D, concave points, including a strong concave point 57 and a weak concave point 58, have been identified. Combined image object 56 is split into smaller objects along splitting lines that connect strong concave point 57 to various weak concave points. For example, splitting line 59 connects concave points 57 and 58. Those split portions of combined object 56 that have the greatest combined linearity are given a higher weighting. However, a higher weighting is also assigned to those splitting lines that follow an intensity change in the pixels. In one implementation, splitting lines need not be linear but can follow a boundary of intensity change in the pixels. FIG. 6E shows combined image object 56 that has been split by splitting line 59 into the two split portions 60-61 that have the greatest combined linearity. The pixels along splitting line 59 also exhibit a different intensity. FIG. 6F shows split portion 60 and split portion 61 after they have been separated along splitting line 59. Split portions 60-61 are logically split in data network 40 and treated as separate image objects for purposes of coregistration, but first image 39 is not altered by separating split portions 60-61 in the image.

In step 27 of method 38, second image objects are generated from a second digital image taken of second tissue slice 22. The second image objects are also objects comprising linked pixels in data network 40. Second tissue slice 22 is taken from the paraffin-embedded tissue samples immediately above first tissue slice 20. Image objects are also generated from digital images of the tissue slice immediately below first tissue slice 20, as well as all of the other tissue slices sliced from the paraffin-embedded tissue samples 16. For example, if ten needle core samples are taken of a patient with prostate cancer, and the paraffin-embedded tissue samples are sliced into one thousand slices, then there are ten thousand first and second image objects from which ten chains of pairs of coregistered objects must be generated. For each of the ten needle core tissue samples, adjacent pairs of image objects are coregistered to form a chain of slice 1 to slice 2, slice 2 to slice 3, slice 3 to slice 4, etc. In the optimal implementation of method 38, only the image objects corresponding to the top and bottom slices are not coregistered with another image object. This optimal implementation generates a closed loop in which for each needle core tissue sample each image object is coregistered with at least one other image object.

In step 28, a characteristic of each of the first objects 41 and each of the second objects is quantified. Characteristics such as length, width and area of the image objects are quantified and stored in database 12. The linearity of each object can be determined from its longest dimension (length) and its narrowest total width along its entire length. All of the image objects are categorized according to similar length, width, area and linearity.

In step 29, system 10 concurrently compares multiple pairs of image objects within each group of objects having similar characteristics. Multiple pairs of image objects in different digital images are compared simultaneously. For example, those 20% of the image objects falling within a range of the largest combined length, width, area and linearity are each compared to one another. For each pair of image objects that is compared, both objects have magnitudes of a characteristic or a combined characteristic that are more similar to one another than are the two magnitudes of the characteristic or combined characteristic of all pairs of objects that are not compared. At least one of the pairs of image objects that is compared includes one of the first objects 41 and one of the second objects, such that objects in adjacent slices (and different digital images) are compared. Consequently, one of the first objects 41 and one of the second objects are in different digital images. Then the next 20% of the image objects whose combined length, width, area and linearity fall within a second range are each compared to one another. The third, fourth and fifth groups of 20% of the image objects are also compared to one another.

In step 30, a comparison factor is generated for each pair of image objects that is compared in step 29. In one implementation, the comparison factor is an overlap ratio. One way of calculating an overlap ratio is to divide the number of pixels that overlap by the total number of pixels of the combined superimposed image objects. System 10 identifies the pair of objects that has the largest comparison factor, e.g., overlap ratio. Two image objects that perfectly overlap have an overlap ratio of one. The pair of image objects with the largest overlap ratio will be the easiest to coregister, so the coregistration begins with this pair in order to conserve computational resources. This most similar pair has a first object 63 and a second object that are in different digital images.

In step 31, a first middle path is defined through first image object 63, and a second middle path is defined through the second image object. First image object 63 is in first digital image 39 of first tissue slice 20. The second image object is in a second digital image of second tissue slice 22.

FIGS. 7A-D illustrate the process by which system 10 defines a first middle path 62 through the first image object 63 in first digital image 39. FIG. 7A shows first image object 63, which represents one of several slice sections of first tissue slice 20. Middle path 62 traverses through first image object 63 along a path that is equidistant from opposite sides of the object. The route of middle path 62 is determined by incrementally shrinking object 63 by the same small steps from all sides, as shown in FIG. 7B. Where the two shrinking sides meet is the route of the middle path. Middle path 62 is shown in FIGS. 7C-D. FIG. 7D shows a middle path 64 defined through a second image object 65 in a second digital image. The route of middle path 64 is determined in the same manner as the route of middle path 62. In one implementation, the middle path need not extend all the way from one boundary of an image object to the opposite boundary. Only the middle path at the center of the object can be used. In another implementation, the middle path can be composed of multiple path segments along the route through the middle of the object.

In step 32, first landmarks are defined on first middle path 62, and second landmarks are defined on second middle path 64. First, the middle of middle path 62 is determined, and a center landmark 66 is placed at the middle of middle path 62, as shown in FIG. 7C. Then, additional first landmarks are placed on middle path 62 at constant intervals on either side of center landmark 66. FIG. 7D shows that eleven first landmarks have been defined on first middle path 62. The lowest landmark is not placed at the constant interval from its neighboring landmark, but rather is placed in the center of an object fragment 68 at the bottom of first image object 63. This ensures that a landmark will be placed in object fragment 68.

In another implementation, additional landmarks are placed at locations that are not on the middle path but rather are positioned at based on a local direction of the middle path. These additional landmarks can be located both inside or outside of the boundary of an image object. For example, the average linear direction of the bottom third of middle path 62 can be extended beyond the lower boundary of first image object 63, and an additional landmark can be placed at an appropriate interval from the last landmark along the extension line instead of at the center of object fragment 68. Thus, an additional first landmark would be placed not on middle path 62 but rather at a location determined based on a local direction of middle path 62. Moreover, landmarks at the upper and lower ends of first image object 63 can be placed not on middle path 62 but rather within object 63 at locations determined based on the local direction of middle path 62 more than one interval away from the boundary of object 63. Extending the line on which landmarks are placed near an object boundary based on the local direction of the middle path away from the boundary eliminates any ambiguities in the method of FIG. 7B for defining the path that is equidistant from “opposite” sides as that path approaches the boundary.

A center landmark 67 is also placed at the middle of middle path 64 of second image object 65, as shown in FIG. 7D. Additional second landmarks are then placed on middle path 64 at the same intervals along second middle path 64 as the first landmarks are placed along first middle path 62. As second image object 65 is longer than first image object 63, more second landmarks are placed at the top and bottom along middle path 64 at the same constant intervals. The larger interval between the tenth and eleventh first landmarks is maintained, however, between the twelfth and thirteenth second landmarks.

In step 33, individual first landmarks are linked to the corresponding individual second landmarks. As shown by the arrows in FIG. 7D, each of the eleven first landmarks is associated with one of the second landmarks.

In another embodiment, landmarks are placed along a loop path equidistant inside the boundary of the image object. For example, in another embodiment of step 31, system 10 defines a loop path 69 that travels equidistant inside the boundary of first image object 63. In step 32, landmarks are then defined at equal intervals along loop path 69. FIG. 8 shows loop path 69 defined just inside the contour of the boundary of first image object 63. Instead of defining a center landmark at the middle of an open path, a top landmark 70 is defined at the upper most point of the closed loop path 69. The landmarks are then placed at equal intervals around the loop starting at the position of top landmark 70. In step 33, individual first landmarks on a first loop path are then linked to corresponding second landmarks on a second loop path.

In step 34, the second landmarks in second image object 65 are adjusted based on corresponding image objects within second image object 65. The adjusting in step 34 uses object-oriented image analysis as opposed to merely pixel-oriented image analysis. Pixel-oriented image analysis does not segment digital images into objects whose characteristics are then determined and stored in a data network. First image object 63 is segmented and classified to generate many subobjects that correspond to tissue structures, such as a nucleus, a membrane, a cell or a group of cells. Thus, there are several hierarchical levels in data network 40 between the first image objects 41 shown in FIG. 5 and the pixels 42. Data network 40 also includes a hierarchical branch representing the second image objects from the second digital image, which in turn includes multiple hierarchical levels between the second image objects and the pixels of the second digital image.

System 10 determines the characteristics of the subobject located at the position of each first landmark and then adjusts the position of the associated second landmark to coincide with a subobject in second image object 65 that exhibits similar characteristics. However, method 38 does not require subobjects to be matched at each coregistered pixel of second image object 65 but rather only at the locations of the second landmarks. For example, if center landmark 66 is located over a nucleus exhibiting a particular length, width, area, linearity (or non-linearity) and average pixel intensity, then center landmark 67 is shifted in second image object 65 to the location of a subobject nearest to the original position of center landmark 67 that has a similar length, width, area, linearity and intensity. By linking a second landmark to the associated first landmark in step 33, the area is reduced in the second digital image in which a subobject must be found that is similar to the subobject at the location of the first landmark.

In step 35, a first pixel in first image object 63 is coregistered with a second pixel in second image object 65 using multiple first landmarks and multiple second landmarks. System 10 attempts to coregister each pixel in first image object 63 with a pixel in second image object 65. Where first image object 63 does not overlap second image object 65 when the two objects are superimposed, pixels from one object are coregistered with pixels outside of the other object. For example, the pixels located at the first and second landmarks on second image object 65 are coregistered with pixels that are outside of first image object 63, as shown in FIG. 7D.

FIG. 9 shows a first pixel 71 in first image object 63 that is coregistered with a second pixel 72 in second image object 65 using multiple first landmarks and multiple second landmarks. Second pixel 72 is identified by determining which pixel in second image object 65 has the same spatial relationships to the second landmarks as first pixel 71 has to the associated first landmarks in first image object 63. The spatial relationships to nearer landmarks are given greater weighting. First pixel 71 is closest to landmark 73. So a preliminary location (*) in second object 65 is determined that is the same distance and angle from associated landmark 74 as first pixel 71 is from landmark 73. The preliminary location (*) is shown in FIG. 10. Then the preliminary location is adjusted by a first predetermined proportion towards a second location that is the same distance and angle from associated center landmark 67 as first pixel 71 is from center landmark 66, considering that landmark 66 is the second closest landmark to first pixel 71. In one implementation, the first predetermined proportion is 40%. Thus, the preliminary location is shifted 40% of the way from the preliminary location (*) to the second location that is the same distance and angle from landmark 67 as first pixel 71 is from landmark 66.

Then the adjusted location is further adjusted by a second predetermined proportion towards a third location that is the same distance and angle from landmark 75 as first pixel 71 is from landmark 76, considering that landmark 76 is the third closest landmark to first pixel 71. In one implementation, the second predetermined proportion is 30%. Thus, the adjusted location is shifted 30% of the way to the third location that is the same distance and angle from landmark 75 as first pixel 71 is from landmark 76. And the adjusted location is further adjusted by a third predetermined proportion, such as 20%, towards a fourth location that is the same distance and angle from landmark 77 as first pixel 71 is from landmark 78 because landmark 78 is the fourth closest landmark to first pixel 71. In FIG. 10, second pixel 72 that is coregistered with first pixel 71 is indicated by a six-pointed star. As part of the coregistering in step 35, the location of coregistered second pixel 72 has been adjusted from the preliminary location indicated by an asterisk. In this example, only the four closest first landmarks and the four associated second landmarks are used to coregister first pixel 71 to second pixel 72. The same coregistration procedure can be used, however, with fewer or more landmarks.

After first pixel 71 has been coregistered with second pixel 72, all remaining pixels of both first image object 63 and second image object 65 are coregistered with pixels inside or near the other image object using multiple first and second landmarks. Steps 29-35 are then repeated in order to coregister each image object with at least one other image object in another digital image. For example, where system 10 is coregistering image objects in digital images of tissue slices each containing five needle core tissue samples, ideally there should be five chains of coregistered image objects in which each object is coregistered with the two objects of the adjacent tissue slices except for the top and bottom slices, whose image objects are coregistered with only one other image object.

System 10 begins by coregistering that pair of image objects that exhibits the best fit according to the comparison factor and the object characteristics. Then the pair of image objects with the next best fit is coregistered. Once an image object has been coregistered with two other image objects, that image object can be removed from the pool of image objects that are compared to other image objects in step 29. The coregistration method continues by comparing an ever decreasing number of remaining image objects whose fit is increasingly less similar.

In step 36, first digital image 39 that includes first image object 63 and the second digital image that includes second image object 65 are displayed at the same time on graphical user interface 14. First digital image 39 depicts first tissue slice 20, and the second digital image depicts second tissue slice 22. First digital image 39 is displayed in a first frame, and the second digital image is displayed in a second frame. First pixel 71 is centered in the first frame and the coregistered second pixel 72 is centered in the second frame. A pixel is considered to be centered in a frame if the pixel appears to the user to be located in the middle of the frame, even if the pixel is not exactly centered. Similarly, where there are an even number of pixels across a frame, a pixel is considered to be centered if that pixel is adjacent to the location that is half way between the sides of the frame.

In another embodiment, the first and second pixels 71-72 that are coregistered with each other are not centered in the first and second frames but rather are located at analogous positions in both frames. For example, first pixel 71 is positioned at a first reference location inside the first frame, and second pixel 72 is positioned at a second reference location inside the second frame such that the first reference location relative to the first frame corresponds to the second reference location relative to the second frame. First pixel 71 could be centered in the upper right quadrant of the first frame, and second pixel 72 would be centered in the upper right quadrant of the second frame.

FIG. 11 is a screenshot of graphical user interface 14 of system 10 in step 36 of method 38. Both first digital image 39, including a first image object 79, and a second digital image 80, including a second image object 81, are displayed on the same screen. A portion of first digital image 39 is displayed in a first frame 82, and a portion of second digital image 80 is displayed in a second frame 83 on graphical user interface 14. First image object 79 includes a first pixel 84 that was coregistered in step 35 with a second pixel 85 in second image object 81. First pixel 84 is centered in first frame 82, and second pixel 85 is centered in second frame 83.

In step 37, system 10 shifts second digital image 80 within second frame 83 in response to a user shifting first digital image 39 relative to first frame 82 such that each pixel of second digital image 80 that is centered in second frame 83 always corresponds to a coregistered pixel of first digital image 39 that is centered in first frame 82. Thus, as a user of system 10 shifts first digital image 39 in relation to first frame 82, each pixel that is centered in the displayed portion of second digital image 80 corresponds to a coregistered pixel of first digital image 39 that is centered in first frame 82. The user of system 10 can shift first digital image 39 by clicking on any location in image 39 with a cursor and dragging image 39 while the mouse button remains depressed. The large rectangle in the main lower section of the screenshot of FIG. 11 represents first slide 21 of stained tissue.

Other digital images besides first digital image 39 and second digital image 80 are also displayed in frames in FIG. 11. The various digital images displayed in the row of frames along the top of graphical user interface 14 depict various tissue slices that have been stained with different biomarkers. Because the tissue slices are very thin, adjacent slices contain portions of the same tissue structures. The same tissue structures react differently to each different biomarker. The tissue slices depicted by the images in the top row of frames, from left to right, were stained with hematoxylin and eosin (H&E), progesterone receptor (PR) stain, estrogen receptor (ER) stain, human epidermal growth factor receptor 2 (Her2), Mib-1 antibody to Ki-67 antigen (Mib), silver in situ hybridization (SISH) for chromosome 17 detection (SishChr17), and silver in situ hybridization (SISH) for determination of HER2 gene status (SishHer2). Thus, second digital image 80 depicts a tissue slice stained with progesterone receptor (PR) stain. By centering the coregistered pixels showing the tissue structures that have been stained with different biomarkers, system 10 allows the user to obtain information on how the same tissue structures have reacted to different biomarkers. The pixels of the various digital images that are centered in each of the frames of the top row are coregistered with the pixel of first digital image 39 that is centered in first frame 82. While system 10 directly coregisters only pixels in digital images of adjacent tissue slices, the pixels in images of distant slices are indirectly coregistered through the chain of coregistered pixels in images of adjacent intervening slices. Thus, the center pixels in each of the frames of the top row are all directly or indirectly coregistered with one another.

FIG. 12 illustrates how second digital image 80 is shifted compared to its position in FIG. 11 as the user shifts first digital image 39 relative to first frame 82. In FIG. 12, the user has shifted first digital image 39 to the right under first frame 82 such that a pixel 84 in image object 43 is in the center of first frame 82. System 10 has shifted second digital image 80 to the right such that a pixel 85 in an image object 86, which is coregistered with pixel 84, is centered in second frame 83. Note that second digital image 80 has been shifted less than the user shifted first digital image 39 because there is a larger distance between objects 79 and 43 in first digital image 39 than there is between objects 81 and 86 in second digital image 80.

FIG. 13 illustrates how second digital image 80 is shifted compared to its position in FIG. 12 as the user shifts first digital image 39 even farther to the right under first frame 82 such that a pixel 87 in an image object 88 is in the center of first frame 82. System 10 has shifted second digital image 80 to the right even farther such that a pixel 89 in an image object 90, which is coregistered with pixel 87, is centered in second frame 83.

In the embodiment of method 38 illustrated by FIGS. 11-13, the user shifts first digital image 39 under a stationary first frame 82. In another embodiment, however, the frame can be shifted over a stationary digital image. In that case, the second digital image 80 is shifted within second frame 83 in response to a user shifting first frame 82 over first digital image 39 such that each pixel of second digital image 80 that is centered in second frame 83 corresponds to a coregistered pixel of first digital image 39 that is centered in first frame 82.

FIGS. 14-15 illustrate another aspect of method 38 in which the pixels of the displayed portion of a second digital image are dynamically coregistered as the user shifts a first digital image relative to a frame such that the pixel that is centered in the displayed portion is coregistered with the pixel that is centered in the frame using only those second landmarks in the second digital image that are associated with certain first landmarks in the first digital image that are located inside the frame. This dynamically updated coregistration has the effect of more closely aligning the image object that is centered in the displayed portion of the second digital image with the image object that is centered in the frame. Where landmarks associated with multiple image objects are used to coregister the pixels comprising the centered image objects, those centered image objects are oriented such that the weighted average orientation of the multiple image objects in the two digital images is optimized. However, where the coregistering of pixels in the second digital image uses only those second landmarks that are associated with first landmarks located on an image object in the frame over the first digital image, the image object that system 10 centers in the displayed portion of the second digital image becomes aligned with the image object that the user centers in the frame.

FIG. 14 is a screenshot of graphical user interface 14 of system 10 in the implementation of method 38 in which the pixels of a displayed portion 91 of second digital image 80 are coregistered with pixels of a first digital image 92 by using second landmarks in second image 80 that are associated with first landmarks in first image 92 that are both weighted based on their distances from the centers of frames. For example, the pixels of displayed portion 91 of second digital image 80 can be coregistered with the pixels of first digital image 92 by using only those second landmarks in second image 80 that are associated with first landmarks on an image object 93 in first frame 82 superimposed over first image 92. In FIG. 14, the pixels comprising the three image objects 93-95 in first image 92 are coregistered with the pixels comprising the three image objects 81, 86 and 96, respectively, in second image 80. As the user shifts first digital image 92, system 10 shifts displayed portion 91 of second digital image 80 so that each pixel that is centered in displayed portion 91 of second digital image 80 corresponds to a coregistered pixel of first digital image 92 that is centered in first frame 82. In FIG. 14, a pixel 97 that is centered in displayed portion 91 is coregistered with a pixel 98 that is centered in first frame 82. Because landmarks nearer to object 81 in image 80 and nearer to object 93 in image 92 are given a higher weighting in the coregistration of the two images, the orientation of object 81 in display portion 91 is similar to the orientation of object 93 in first frame 82. Only pixel 97 of second image 80 is exactly coregistered with pixel 98 of first image 92. The other pixels of second image 80 are rotated about pixel 97 to optimize the average coregistration of all pixels based on the weighted landmarks along the middle paths of the image objects 93 and 81.

FIG. 15 illustrates the changed orientation of second digital image 80 in displayed portion 91 as the user of system 10 shifts first digital image 92 from being centered on object 93 to being centered on object 94. The pixel 99 that is centered in displayed portion 91 of second digital image 80 corresponds to a coregistered pixel 100 of first digital image 92 that is centered in frame 82. In FIG. 15, system 10 has shifted and rotated displayed portion 91 of second digital image 80 in response to a user shifting first digital image 92 to the right relative to stationary first frame 82. The pixels of second image 80 within displayed portion 91 are rotated about pixel 99 to optimize the overall coregistration using landmarks on objects 94 and 86 that are weighted based on their distances from the centers of frame 82 and displayed portion 91. In one implementation, each coregistered pixel of second image 80 within displayed portion 91 is determined based only on those second landmarks on second image 80 that are associated with first landmarks on first image 92 that are located on image object 94. System 10 has shifted and rotated second image 80 such that the orientation of object 86 in displayed portion 91 coincides with the orientation of object 94 in frame 82.

In the embodiment of FIG. 15, only landmarks associated with image object 94 centered in frame 82 are used for coregistration. System 10 dynamically coregisters the pixels of displayed portion 91 of second image 80 as the user shifts first image 92 under frame 82 using only those second landmarks on second image 80 that are linked or associated with first landmarks on object 94 centered in frame 82. The coregistered image objects centered in displayed portion 91 and in frame 82 are aligned. In another embodiment, only landmarks inside frame 82 are used for coregistration.

In an additional embodiment, the user is able to zoom the first digital image in and out in the main lower section of graphical user interface 14. In FIG. 15, the entire first digital image 92 fits within the main lower section. In the additional embodiment, however, first image 92 can be expanded so that only a portion of first image 92 fits within the main lower section. But the size of first frame 82 remains the same. So as the user zooms in first image 92, a smaller portion of first image 92 fits within first frame 82. In the additional embodiment, system 10 dynamically coregisters the pixels of displayed portion 91 of second digital image 80 as the user zooms first digital image 92 within frame 82 such that pixel 99 that is centered in displayed portion 91 is coregistered with pixel 100 that is centered in frame 82 using only those second landmarks on image 80 that are associated with first landmarks on image 92 associated with the object shown in frame 82. As first image 92 is zoomed in, a greater proportion of the used landmarks are located on the image object that is centered in frame 82, which causes displayed portion 91 of second digital image 80 to become displayed in a coregistered orientation to how first digital image 92 is oriented in relation to the center of frame 82.

In FIGS. 11-13, the first digital image 39 in the main lower section of graphical user interface 14 depicts an unstained tissue sample, whereas the portions of the digital images shown in the row of frames at the top of graphical user interface 14 depict stained samples. In FIGS. 14-15, however, the first digital image 92 in the main lower section of graphical user interface 14 shows the entire image of a selected one of the digital images of stained tissue shown in the row of frames at the top. The user may select which image is displayed in the main lower section by clicking above the frame that contains the selected stained tissue. For example, in FIG. 14 the user has selected to display the digital image of tissue stained with Sish/HER2 in the main lower section, as indicated by the highlighted box above the SishHER2 frame. Thus, portions of the same image are displayed in the main lower section and in the upper right frame.

FIG. 16 is a flowchart of steps 101-117 of another method 120 for coregistering digital images of tissue slices obtained from needle biopsies. Method 120 involves detecting and segmenting tissue objects in the digital images, then detecting landmarks on the detected objects, and finally coregistering a pixel at a reference position in a first digital image with a corresponding pixel at the reference position in the second digital image based on multiple landmarks in both images. In step 101, system 10 generates image objects from the digital images of tissue slices of the needle biopsies. Overlapping and touching image objects must be separated before the image objects can be compared with similar image objects in other digital images. Combined image objects are separated based on the linearity of the objects.

FIGS. 17A-F illustrate one way of separating image objects of tissue samples that are in contact with or that overlap each other. First, image objects with a low linearity are identified. An object has a low linearity when it has a large ratio between its maximum middle path width to its median middle path width. FIG. 17A shows a combined image object 121 that will be separated into its constituent tissue samples using concave points. Combined image object 121 is identified as an object with a low linearity. FIGS. 17A-C illustrate the process by which system 10 determines the middle path width of the combined image object 121. A middle path 122 traverses through image object 121 along a path that is equidistant from opposite sides of the object. The route of middle path 122 is determined by incrementally shrinking object 121 by the same small steps from all sides, as shown in FIG. 17B. Where the two shrinking sides meet is the route of the middle path. Where there are multiple branches of the middle path, the longest single path is used. The middle path width is determined by detecting the endpoints on the boundary of the object that are the farthest away from each other. There is an endpoint at the end of each branch of an object. Two of the endpoints are at the ends of the middle path. A middle path width is determined for each of the remaining endpoints 123-126. The maximum middle path width is the distance from the middle path to farthest endpoint. For an endpoint 123 on the boundary of object 121, as indicated in FIG. 17D, the middle path width is the distance between endpoint 123 and middle path 122 along the middle path of the branch, i.e., the length of branch middle path 127 between endpoint 123 and point 128 on middle path 122. The maximum middle path width and the median middle path width are determined based on the widths for each of the endpoints at the ends of the branches of the object.

For those objects having a low linearity, such as combined object 121, points are identified at the center of concave curves along the boundary. Some of the concave points 129-131 on the boundary of combined object 121 are shown in FIG. 17E. The combined image object is then split into smaller objects along splitting paths that connect the concave points. A splitting path is defined as the path between two concave points that minimizes the cumulated sum of the inverse intensities of the pixels along the path. Thus, the splitting path follows pixel intensity. For example, splitting path 132 connects concave points 129 and 130, and splitting path 133 connects concave points 129 and 131. Finally, only those split smaller objects of a combined object are retained that significantly (>10%) increase the combined linearity of the split portions in comparison to the linearity of the combined object. For example, splitting path 132 does not result in two split portions having a greater combined linearity and is therefore rejected. On the other hand, splitting path 133 results in two split portions having the greatest combined linearity and is therefore kept. FIG. 17F shows combined image object 121 after it has been split into the two split portions 134-135 that have the greatest combined linearity. Split portions 134-135 are formed by separating object 121 along splitting path 133 that connects concave points 129 and 131. Split portions 134-135 are logically split in data network 40 and are treated as separate image objects for purposes of coregistration, but the digital image is not altered by separating split portions 134-135 in the image.

FIGS. 18A-D illustrate a way to separate another type of combined object that is curved instead of having branches. FIG. 18A shows a curved combined object 137 and its middle path 138. Combined image object 137 is separated into its constituent tissue samples using a single concave point 139 on the boundary and a nearby point 140 at the highest local curvature on middle path 138, as shown in FIG. 18B. Whereas the low linearity of combined image object 121 was determined by the large ratio of its maximum middle path width to its median middle path width, the low linearity of combined image object 137 is determined by its high angle of curvature. The angle of curvature is defined as the ratio of the Euclidean distance 141 between the two endpoints 142 and 143 of middle path 138 and the length of middle path 138 between endpoints 142-143. A linear object has a ratio of one; combined image object 137 has a low ratio.

In order to split combined image object 137 into more linear objects, a third point 144 is defined at the intersection between the boundary of combined object 137 and the line 145 intersecting concave point 139 and point 140 on middle path 138. FIG. 18B shows that point 140 is at the location of the highest local curvature along middle path 138.

FIG. 18C shows that combined image object 137 is split into smaller objects along a splitting path 146 that connects concave point 139 to the intersecting point 144. The splitting path need not be linear but can follow a boundary of intensity change in the pixels. FIG. 18D shows combined image object 137 after being split along splitting path 146 into two split portions 147-148. Split portions 147-148 are logically split in data network 40 and treated as separate image objects for purposes of coregistration, but the digital image of the tissue sample is not altered by separating split portions 147-148 in the image.

Image objects are generated in each of the digital images taken of each slice of the paraffin-embedded tissue samples. Each image object is linked to pixels in data network 40.

In step 102, characteristics such as length, width, area and shape index of the image objects are quantified for each of the image objects in each of the digital images. One shape index represents how well an image object fits into a square of similar size. Another shape index is calculated by dividing the border length of the object by the square root of its area.

In step 103, pairs of objects from among all of the images are compared based on the similarity of geometric characteristics of the paired objects. Each possible pair of objects from among all of the images is characterized by a similarity measure, which is the inverse of the sum of the absolute differences of the geometric characteristics of the two objects. For example, in a scenario of four digital images each containing five image objects, there are one hundred fifty possible pairs of image objects to compare. System 10 also tests whether merging one of the two image objects with an adjacent image object would yield a higher similarity to the other image object than without merging. If so, the similarity between the merged image object and the other image object is also stored together with a mark indicating the necessity of merging. Pairs of image objects with a similarity measure below a fixed threshold are unpaired.

In step 104, pairs of objects are sorted by similarity, and those pairs with low similarity are removed from the ranking. Pairs of objects are ordered with respect to the similarity measure that is defined in step 103. This includes the similarity obtained from merging one of the two objects as described above. The order of similarity is descending, with pairs of higher similarity ranked higher than those with lower similarity.

In step 105, a comparison factor is calculated for each pair ranked in step 104 in order of the similarity. If a pair has been marked for merging in step 27, the same merging in step 105 is performed before the comparison factor is computed. The value of the comparison factor is then stored for all objects. In one implementation, the comparison factor is an overlap ratio. One way of calculating the overlap ratio is to divide the number of pixels that overlap by the total number of pixels of the combined superimposed image objects. One of the objects of each pair is translated, rotated and/or flipped in order to achieve the highest comparison factor with its paired object.

In step 106, system 10 then confirms each pair whose comparison factor is above a predetermined threshold and unpairs those pairs whose comparison factor is below the threshold. In step 107, those pairs that conflict with the pairing of previously confirmed object pairs are unpaired. For example, a pairing of objects is unpaired that includes an object from another pair with a higher similarity as defined in step 103 and that has already been confirmed based on its comparison factor.

In step 108, steps 104-107 are repeated with lower thresholds to ensure that each digital image has at least one image object that is paired with another image object in another digital image. In step 108, lower values for the thresholds for similarity and for the comparison factor are used in the comparison of objects that have been unpaired in steps 104-107 because of low similarity or low comparison factor. Two objects are directly associated if they form a pair by the end of the steps 104-107. Two objects are indirectly associated if they do not form a pair by the end of the first iteration of steps 104-107 but their association can be deduced through their association with other paired image objects. The association process is transitive in that if a first object in a first image is paired with a second object in a second image, and that second object in the second image is paired with a third object in a third image, then the first object in the first image is indirectly associated with the third object in the third image. In this example, the first and second objects and the second and third objects would be paired in steps 104-107 because of their high similarity and comparison factors. On the other hand, the first object and the third object would be unpaired because they have either a low similarity or a low comparison factor.

In step 109, spanning trees of image objects are generated from the pairs identified in steps 103-108. The vertices of the trees are the image objects from the different tissue slices. For example, if five needle core samples are taken of a patient, and the paraffin-embedded tissue samples is sliced into twenty slices, then there are one hundred image objects from which five spanning trees of twenty coregistered objects are generated. An edge is defined between two image objects at the vertices of the spanning tree if the two objects are directly paired. A weight is assigned to each edge of the tree as the inverse of the comparison factor between the image objects linked by the edge. In one implementation, the weight of an edge between two image objects is the inverse of the overlap ratio between the two image objects.

The spanning tree is a connected and undirected graph for which all of the vertices (image objects) lie in the tree and which contains no closed loops. For example, a spanning tree between objects in four slices can include the following pairs: object 1 in slice 1 paired with object 2 in slice 2; object 2 in slice 2 paired with object 3 in slice 3; and object 3 in slice 3 paired with object 4 in slice 4. The spanning tree could alternatively include the following pairs: object 1 in slice 1 paired with object 2 in slice 2; object 1 in slice 1 paired with object 3 in slice 3; and object 2 in slice 2 paired with object 4 in slice 4. In the optimal implementation of method 120, the weights of the edges between vertices of the spanning tree are minimized. Thus, the cumulated sum of the inverse of the comparison factors between image objects that are paired is minimized.

In step 110, a middle path is defined through each of the objects in the spanning tree defined in step 109. The process by which system 10 defines middle paths through objects is the same as in step 31 of method 38.

In step 111, landmarks are placed on the middle path of one image object of each pair of image objects in the spanning tree. First, the middle of the middle path is determined, and a center landmark is placed at the middle of middle path. Then, additional landmarks are placed on the middle path at constant intervals on either side of the center landmark. In one implementation, landmarks are placed only on the middle path. In another implementation, additional landmarks are placed at locations that are not on the middle path but rather on a corrected middle path. FIGS. 19A-B illustrate how additional landmarks are placed on corrected middle paths. FIG. 19A shows an image object 150 with a middle path 151. FIG. 19B shows a paired image object 152 with a middle path 153. The tops of the image objects have been distorted, which has caused middle paths 151 and 153 to deviate from the optimal middle path towards the tops of the image objects.

Middle path 151 is corrected by extending the path in a local direction 154 from a source point 155 on middle path 151. Source point 155 is determined based on its distance from the endpoint of middle path 151. The distance from the endpoint depends on the median middle path width of image object 150. The corrected middle path is defined by a new endpoint 156 located at the intersection of the boundary of image object 150 and the extended local direction 154. Although not illustrated in FIG. 19A, middle path 151 would also be corrected near its lower endpoint.

The landmarks that are placed at constant intervals along middle path 151 are placed on the corrected middle path. These additional landmarks are located inside of the boundary of the image object. For example, the average linear direction of the top fifth of middle path 151 can be extended towards the upper boundary of image object 150, and an additional landmark 157 can be placed at an appropriate interval from the last landmark along the extension line instead of along the original middle path 151. Extending the path on which landmarks are placed near an object boundary based on the local direction of the middle path also reduces the imprecision caused by defining the path to be equidistant from “opposite” boundaries as that path approaches the boundary. In FIG. 19B, an additional landmark 159 is also placed at the appropriate interval from the last landmark along an extension line 160 instead of along the original middle path 153. The additional landmarks 157 and 159 improve the coregistration of image objects 150 and 152.

In step 112, landmarks are placed on the middle path of the second image object of each pair of objects. The second landmarks on the middle path of the second object are associated with first landmarks on the middle path of the first object by translating, rotating and flipping the second object to achieve the best overlap with the first object. The second landmarks are then placed on the middle path of the second object at locations associated with the locations of the first landmarks on the first object. Second landmarks are associated with their corresponding first landmarks based on their distances to the transformed first landmarks. The transformation is defined by the translation, rotation, and flip parameters that were computed in step 105 to maximize the comparison factor between the two image objects. Each landmark in the first image object and in the second image object includes an orientation vector representing the local direction of the middle path at the landmark.

In another embodiment, the landmarks on the middle path of the second image object are defined as those points in the middle that minimize the distance to the transformed landmark points of the first image object. The transformation is defined by the translation, rotation and flip parameters that were computed in step 105 to maximize the comparison factor between the two image objects.

In step 113, the positions of the second landmarks are adjusted based on corresponding tissue structures in the first and second image objects. The image objects are segmented and classified to generate many subobjects that correspond to higher order tissue structures, such as stromal tissue regions, fatty tissue regions, cancerous regions and connective tissue regions. Thus, there are several hierarchical levels in data network 40 between the first image objects 41 shown in FIG. 5 and the pixels 42. Data network 40 also includes a hierarchical branch representing image objects in the second digital image, which in turn includes multiple hierarchical levels. System 10 defines a first neighborhood around each first landmark and adjusts the position and the orientation vector of the associated second landmark so that the higher order tissue structures in the first neighborhood coincide with the higher order tissue structures in the second neighborhood around the second landmark. The two neighborhoods have the same shape and size. In one implementation, these two neighborhoods are circles centered on the two landmarks. The first neighborhood is static in the first digital image because the position of the first landmark is fixed. The second neighborhood moves within the second digital image because the position of the second landmark is adjusted.

In step 114, a first digital image that includes a first image object and a second digital image that includes a second image object are displayed at the same time on graphical user interface 14. The first digital image depicts a first tissue slice, and the second digital image depicts a second tissue slice. The first digital image is displayed in a first frame, and the second digital image is displayed in a second frame.

In step 115, pixel-to-pixel registration is performed in real time as the user is viewing graphical user interface 14 based on the pixel that is at the center of the first frame in the first digital image. The pixel at the center of the first frame is denoted as the centered pixel in the following description. The centered pixel is coregistered with a second pixel in the second digital image using multiple first landmarks in the first digital image and multiple second landmarks in the second digital image.

FIG. 20 illustrates the procedure for coregistering the second pixel 161 with the centered pixel 162. In this example, for clarity purposes only the four closest first landmarks in the first image and the four associated second landmarks in the second image are used to coregister second pixel 161 with centered pixel 162. First, a virtual first landmark 163 is generated. The position of first virtual landmark 163 is a weighted mean of the positions of the landmarks 165-168 in the first digital image. The orientation vector 164 of first virtual landmark 163 is a weighted mean of the local middle path directions at each of the landmarks 165-168. The weights are computed by using the inverse distance of each landmark to first pixel 162. Second, the position and orientation vector 169 of a second virtual landmark 170 is analogously computed as a weighted mean of the positions and orientation vectors of the second landmarks 171-174 using the weights of the respective first landmarks. The difference in the orientation vector of the first virtual landmark 163 to the orientation vector of the second virtual landmark 170 is used to determine the position of second pixel 161. Second pixel 161 is shifted by the angle between the orientation vector of the first virtual landmark and the orientation vector of the second virtual landmark. Second pixel 161 is assigned the weighted orientation vector 169 of the second landmarks 171-174. After second pixel 161 has been coregistered with centered pixel 162, the associated pixels in the remaining other digital images are coregistered with centered pixel 162. For each pixel that is to be coregistered with centered pixel 162, an additional virtual landmark is determined using second landmarks in the other digital image with the weights of the corresponding first landmarks.

In step 116, the second digital image is shifted such that the corresponding coregistered second pixel 161 is centered in the second frame. Thus, centered pixel 162 is displayed in the center of the first frame, and coregistered second pixel 161 is displayed at the center of the second frame. In addition, the second digital image is rotated in the second frame about the second pixel 161 based on the orientation vector 164 of centered pixel 162. Thus, a second image object with a middle path passing through second landmarks 171-174 is rotated so as to become aligned with a first image object with a middle path passing through first landmarks 165-168.

Pixels in other digital images can also be coregistered with centered pixel 162 in the first digital image. In that case, the pixels that are coregistered with centered pixel 162 at the center of the first frame are centered in their respective frames. Moreover, the respective digital images are rotated about the coregistered pixels in order to align with the orientation vector 164 of centered pixel 162

In another embodiment, “centered” pixel 162 and second pixel 161 are coregistered with each other, but are not centered in the first and second frames. Rather, pixels 161-162 are located at analogous positions in both frames. For example, if pixel 162 is positioned at a first reference location inside the first frame, then second pixel 161 is positioned at a second reference location inside the second frame such that the first reference location relative to the first frame corresponds to the second reference location relative to the second frame. Pixel 162 could be centered in the upper left quadrant of the first frame, and second pixel 161 would be centered in the upper keft quadrant of the second frame. Additional coregistered images would be positioned analogously.

In step 117, the second digital image is dynamically shifted within the second frame in response to the user of system 10 shifting the first digital image relative to the first frame. The new second pixel in the second frame corresponds to a coregistered pixel in the first digital image that has become centered in the first frame. In addition, the second digital image is rotated about the new second pixel such that the orientation of the second digital image corresponds to the orientation vector of the first virtual landmark used to coregister the pixels.

FIGS. 21-24 illustrate a manual procedure for adjusting the coregistration of a second digital image 175 with a first digital image 176 after the digital images have been displayed on graphical user interface 14 in step 36 of method 38 or in step 114 of method 120. Second digital image 175 can be manually shifted by clicking on the image and holding a mouse button depressed while the user moves the computer mouse. The location of a particular second pixel 177 can be coregistered with the location of centered pixel 178 by shifting second pixel 177 to the center of the displayed portion 179 of second digital image 175. The user of system 10 finds the second pixel 177 that corresponds to centered pixel 178 based on the visual observation of similar tissue structures in both the second and first digital images 175-176.

FIG. 22 shows second digital image 175 after it has been shifted within displayed portion 179 such that second pixel 177 is centered in displayed portion 179. FIG. 22 also lists the degrees by which the images in the row of frames were rotated so as to become coregistered with first digital image 176. For example, second digital image 175 was rotated by −100.0 degrees such that the image objects in second digital image 175 have become aligned with image objects in first digital image 176. FIG. 22 shows centered pixel 178 centered in the middle of a first frame 180. In another embodiment, centered pixel 178 is located at a location that is designated by markings on graphical user interface 14 other than a frame. For example, centered pixel 178 could be located at the center of a circle or oval. Alternatively, pixel 178 could be located in graphical user interface 14 at the intersection of cross hairs in a manner similar to how pixel 177 is located in displayed portion 179 at the intersection of cross hairs.

The procedure for manually adjusting the coregistration of second digital image 175 with first digital image 176 involves selecting a second digital image to be adjusted, shifting the second digital image based on user input while the first digital image does not move relative to the first frame, and then coregistering the first pixel at the first reference location with a third pixel that is positioned at the second reference location as a result of the shifting.

The locations of the pixels whose coregistration is manually adjusted can be defined as landmarks. The procedure for manually adjusting the coregistration of pixels becomes the manual modification of landmarks. The first and second digital images need not be displayed at the same magnification. Thus, the user selects the magnification and the region in the images that is to be displayed in the frames. System 10 is then switched into the correction mode. Those images in the row of frames that the user wishes to adjust are individually shifted in such a way that the image regions displayed within the individual frames appear to the user with improved regional similarity. The user then locks in the manual changes made to the positions of the images, and the system exits the correction mode. New landmarks have been automatically added to the shifted images at the reference locations where the pixels were manually coregistered. Pixels in the vicinity of the new landmark are now coregistered using multiple landmarks in which the closest landmarks, including the new landmark, are given greater weights.

FIGS. 23-24 illustrate the procedure for manually adjusting the coregistration of a second digital image 181 with a first digital image 182 by selecting the second digital image to be adjusted, both shifting and rotating the second digital image based on user input while the first digital image does not move relative to the first frame 180, and then coregistering the second digital image 181 with the first digital image 182 as the second digital image is positioned after the shifting and rotating.

FIG. 24 shows that third pixel 184 has been shifted to the center of displayed portion 185 of second digital image 181. Although displayed portion 185 is enclosed in a frame in FIG. 24, in other embodiments the displayed portion of second digital image has an irregular shape, and third pixel 184 is shifted to a reference location designated by markings such as cross hairs. The manual shifting of second digital image 181 coregisters third pixel 184 with first pixel 183. First pixel 183 is located at the first reference location, and third pixel 184 is positioned at the second reference location. In this example, both the first and second reference locations are at the centers of square frames. In other embodiments, the reference locations are located at corresponding locations in other shaped frames. For example, both reference locations could be located at the left focal points of ellipsoid frames. In another example, both reference locations could be located at the centers of the lower left quadrants of rectangular frames.

In addition to coregistering third pixel 184 with first pixel 183, second digital image 181 is also rotated about third pixel 184 such that second digital image 181 is coregistered with first digital image 182. The image objects in second digital image 181 that are visible in displayed portion 185 become aligned with the corresponding image objects in first digital image 182. Thus, system 10 allows the user to shift and rotate individual second images so as to modify the registration of the displayed regions of the images to improve the regional similarities of the displayed images.

In FIGS. 23-24, system 10 has added new landmarks to first and second digital images 182-181 where the pixels 184-183 were manually coregistered. The arrows emanating from pixels 183-184 represent the orientation vectors of the new landmarks. For example, the orientation vector 186 emanating from third pixel 184 is a weighted mean of the local middle path directions the other landmarks located on the middle path of the image object shown in displayed portion 185. The orientation vectors of the two new landmarks have been aligned in FIG. 24, which signifies that the image object that is visible in displayed portion 185 has been aligned with the corresponding image objects in first digital image 182 based on the middle paths of the two objects. The −81.0 degrees listed below displayed portion 185 indicates that second digital image 181 has been rotated by −81.0 degrees compared to its original orientation. Part of the −81.0 degree rotation was performed automatically by system 10, and part of the −81.0 degree rotation (e.g., −35 degrees) was performed by manual adjustment by the user.

Data analysis server 13 includes a computer-readable storage medium having program instructions thereon for performing method 38. Such a computer-readable storage medium can include instructions for generating image objects in digital images and for coregistering associated pixels in different digital images.

Although the present invention has been described in connection with certain specific embodiments for instructional purposes, the present invention is not limited thereto. Accordingly, various modifications, adaptations, and combinations of various features of the described embodiments can be practiced without departing from the scope of the invention as set forth in the claims. 

What is claimed is:
 1. A method comprising: defining a first path in a first image object of a first digital image of a first tissue slice; defining a second path in a second image object of a second digital image of a second tissue slice; defining first landmarks on the first path; defining second landmarks on the second path; associating individual first landmarks with individual second landmarks; coregistering the first digital image with the second digital image by coregistering a first pixel in the first image object with a second pixel in the second object using multiple first landmarks and multiple second landmarks; and displaying on a graphical user interface the first digital image in a first frame and the second digital image in a second frame, wherein the first pixel is positioned at a first reference location inside the first frame and the second pixel is positioned at a second reference location inside the second frame, and wherein the first reference location relative to the first frame corresponds to the second reference location relative to the second frame.
 2. The method of claim 1, wherein the first path passes through the first image object halfway between opposite boundaries of the first image object.
 3. The method of claim 1, wherein the first path resembles an outer contour of the first image object.
 4. The method of claim 1, further comprising: defining an additional first landmark not on the first path but within the first image object at a location determined based on a local direction of the first path.
 5. The method of claim 1, wherein the displaying on the graphical user interface is performed before the coregistering the first pixel with the second pixel.
 6. The method of claim 1, further comprising: selecting the second digital image; shifting the second digital image based on user input while the first digital image does not move relative to the first frame; and coregistering the first pixel at the first reference location with a third pixel that is positioned at the second reference location as a result of the shifting.
 7. The method of claim 1, further comprising: selecting the second digital image; rotating the second digital image based on user input while the first digital image does not move relative to the first frame; and coregistering the first digital image with the second digital image as the second digital image is positioned after the rotating.
 8. A method comprising: defining a first middle path through a first image object of a first digital image of a first tissue slice; defining a second middle path through a second image object of a second digital image of a second tissue slice; defining first landmarks on the first middle path; defining second landmarks on the second middle path; associating individual first landmarks with individual second landmarks; coregistering a first pixel in the first image object with a second pixel in the second object using multiple first landmarks and multiple second landmarks; and displaying on a graphical user interface the first digital image in a first frame and the second digital image in a second frame, wherein the first pixel is centered in the first frame and the second pixel is centered in the second frame.
 9. The method of claim 8, further comprising: shifting the second digital image within the second frame in response to a user shifting the first digital image relative to the first frame, wherein the second digital image is shifted such that each pixel of the second digital image that is centered in the second frame corresponds to a coregistered pixel of the first digital image that is centered in the first frame.
 10. The method of claim 9, wherein each coregistered pixel of the second digital image is determined based only on those second landmarks that are associated with first landmarks located on the first image object.
 11. The method of claim 9, wherein each coregistered pixel of the second digital image is determined using first landmarks that are weighted based on their distances to the first pixel.
 12. The method of claim 8, further comprising: shifting the second digital image within the second frame in response to a user shifting the first frame over the first digital image, wherein the second digital image is shifted relative to the second frame such that each pixel of the second digital image that is centered in the second frame corresponds to a coregistered pixel of the first digital image that is centered in the first frame.
 13. The method of claim 8, wherein the first landmarks include an additional landmark that is located outside of the first image object.
 14. The method of claim 8, wherein the coregistering is performed such that a spatial relationship between the second pixel and multiple second landmarks corresponds to the spatial relationship between the first pixel and multiple first landmarks.
 15. The method of claim 14, wherein the spatial relationship between the first pixel and the multiple first landmarks is defined by assigning a larger weighting to those first landmarks that are closer to the first pixel.
 16. The method of claim 8, wherein the first tissue slice is taken from a needle biopsy.
 17. The method of claim 8, wherein the second digital image is displayed in the second frame in a coregistered orientation to how the first digital image is displayed in the first frame.
 18. The method of claim 8, wherein less than the entire first digital image is displayed in the first frame, and less than the entire second digital image is displayed in the second frame.
 19. A method comprising: displaying a first digital image of a first tissue slice on a graphical user interface such that an area of the first digital image is enclosed by a frame; displaying a portion of a second digital image of a second tissue slice on the graphical user interface, wherein the first tissue slice and the second tissue slice are taken from a needle biopsy, wherein the displayed portion of the second digital image has a shape of the frame, and wherein the displayed portion of the second digital image corresponds to the area of the first digital image that is enclosed by the frame; initially coregistering a pixel that is centered in the displayed portion of the second digital image with an associated pixel of the first digital image that is centered in the frame using multiple second landmarks in the second digital image and multiple associated first landmarks in the first digital image; and shifting the displayed portion of the second digital image in response to a user shifting the first digital image relative to the frame, wherein the second digital image is shifted such that each coregistered pixel of the displayed portion of the second digital image is determined using first landmarks that are weighted based on their distance from the center of the frame.
 20. The method of claim 19, wherein the second digital image is shifted such that each coregistered pixel of the displayed portion of the second digital image is determined using first landmarks that are weighted based on their distances to the associated pixel of the first digital image that is centered in the frame.
 21. The method of claim 19, wherein as the user shifts the first digital image each pixel that is centered in the displayed portion of the second digital image corresponds to a coregistered pixel of the first digital image that is centered in the frame.
 22. The method of claim 19, further comprising: dynamically coregistering the pixels of the displayed portion of the second digital image as the user shifts the first digital image such that the pixel that is centered in the displayed portion is coregistered with the pixel that is centered in the frame using only those second landmarks that are associated with first landmarks located inside the frame.
 23. The method of claim 19, further comprising: dynamically coregistering the pixels of the displayed portion of the second digital image as the user zooms the first digital image within the frame such that the pixel that is centered in the displayed portion is coregistered with the pixel that is centered in the frame.
 24. The method of claim 19, wherein the displayed portion of the second digital image is displayed in a coregistered orientation to how the first digital image is oriented in the frame.
 25. The method of claim 19, wherein the first landmarks are located along a middle path of an image object in the first digital image.
 26. The method of claim 19, wherein the first and second landmarks include orientation vectors, and wherein the relative orientation of the first digital image to the second digital image is calculated by a weighted mean of the orientation vectors of the first landmarks and a weighted mean of the orientation vectors of the second landmarks. 